home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 7 / Amiga Format AFCD07 (Dec 1996, Issue 91).iso / serious / shareware / programming / aros / include / clib / utility_protos.h < prev   
C/C++ Source or Header  |  1996-09-12  |  6KB  |  171 lines

  1. #ifndef CLIB_UTILITY_PROTOS_H
  2. #define CLIB_UTILITY_PROTOS_H
  3.  
  4. #ifndef AROS_LIBCALL_H
  5. #   include <aros/libcall.h>
  6. #endif
  7.  
  8. /*
  9.     Prototypes
  10. */
  11. __AROS_LP1(struct TagItem *, AllocateTagItems,
  12.     __AROS_LPA(unsigned long, numTags, D0),
  13.     struct UtilityBase *, UtilityBase, 11, Utility)
  14. #define AllocateTagItems(numTags) \
  15.     __AROS_LC1(struct TagItem *, AllocateTagItems, \
  16.     __AROS_LCA(unsigned long, numTags, D0), \
  17.     struct UtilityBase *, UtilityBase, 11, Utility)
  18.  
  19. __AROS_LP2(void, Amiga2Date,
  20.     __AROS_LPA(unsigned long     , seconds, D0),
  21.     __AROS_LPA(struct ClockData *, result, A0),
  22.     struct Library *, UtilityBase, 20, Utility)
  23. #define Amiga2Date(seconds, result) \
  24.     __AROS_LC2(void, Amiga2Date, \
  25.     __AROS_LCA(unsigned long     , seconds, D0), \
  26.     __AROS_LCA(struct ClockData *, result, A0), \
  27.     struct Library *, UtilityBase, 20, Utility)
  28.  
  29. __AROS_LP2(void, ApplyTagChanges,
  30.     __AROS_LPA(struct TagItem *, list,       A0),
  31.     __AROS_LPA(struct TagItem *, changelist, A1),
  32.     struct UtilityBase *, UtilityBase, 31, Utility)
  33. #define ApplyTagChanges(list, changelist) \
  34.     __AROS_LC2(void, ApplyTagChanges, \
  35.     __AROS_LCA(struct TagItem *, list,       A0), \
  36.     __AROS_LCA(struct TagItem *, changelist, A1), \
  37.     struct UtilityBase *, UtilityBase, 31, Utility)
  38.  
  39. __AROS_LP3(ULONG, CallHookPkt,
  40.     __AROS_LPA(struct Hook *, hook, A0),
  41.     __AROS_LPA(APTR         , object, A2),
  42.     __AROS_LPA(APTR         , paramPacket, A1),
  43.     struct Library *, UtilityBase, 17, Utility)
  44. #define CallHookPkt(hook, object, paramPacket) \
  45.     __AROS_LC3(ULONG, CallHookPkt, \
  46.     __AROS_LCA(struct Hook *, hook, A0), \
  47.     __AROS_LCA(APTR         , object, A2), \
  48.     __AROS_LCA(APTR         , paramPacket, A1), \
  49.     struct Library *, UtilityBase, 17, Utility)
  50.  
  51. __AROS_LP1(ULONG, Date2Amiga,
  52.     __AROS_LPA(struct ClockData *, date, A0),
  53.     struct UtilityBase *, UtilityBase, 21, Utility)
  54. #define Date2Amiga(date) \
  55.     __AROS_LC1(ULONG, Date2Amiga, \
  56.     __AROS_LCA(struct ClockData *, date, A0), \
  57.     struct UtilityBase *, UtilityBase, 21, Utility)
  58.  
  59. __AROS_LP2(struct TagItem *, FindTagItem,
  60.     __AROS_LPA(Tag,              tagValue, D0),
  61.     __AROS_LPA(struct TagItem *, tagList,  A0),
  62.     struct UtilityBase *, UtilityBase, 5, Utility)
  63. #define FindTagItem(tagValue, tagList) \
  64.     __AROS_LC2(struct TagItem *, FindTagItem, \
  65.     __AROS_LCA(Tag,              tagValue, D0), \
  66.     __AROS_LCA(struct TagItem *, tagList,  A0), \
  67.     struct UtilityBase *, UtilityBase, 5, Utility)
  68.  
  69. __AROS_LP1(void, FreeTagItems,
  70.     __AROS_LPA(struct TagItem *, tagList, A0),
  71.     struct UtilityBase *, UtilityBase, 13, Utility)
  72. #define FreeTagItems(tagList) \
  73.     __AROS_LC1(void, FreeTagItems, \
  74.     __AROS_LCA(struct TagItem *, tagList, A0), \
  75.     struct UtilityBase *, UtilityBase, 13, Utility)
  76.  
  77. __AROS_LP0(ULONG, GetUniqueID,
  78.     struct UtilityBase *, UtilityBase, 45, Utility)
  79. #define GetUniqueID() \
  80.     __AROS_LC0(ULONG, GetUniqueID, \
  81.     struct UtilityBase *, UtilityBase, 45, Utility)
  82.  
  83. __AROS_LP1(struct TagItem *, NextTagItem,
  84.     __AROS_LPA(struct TagItem **, tagListPtr, A0),
  85.     struct Library *, UtilityBase, 8, Utility)
  86. #define NextTagItem(tagListPtr) \
  87.     __AROS_LC1(struct TagItem *, NextTagItem, \
  88.     __AROS_LCA(struct TagItem **, tagListPtr, A0), \
  89.     struct Library *, UtilityBase, 8, Utility)
  90.  
  91. __AROS_LP2(LONG, SMult32,
  92.     __AROS_LPA(long, arg1, D0),
  93.     __AROS_LPA(long, arg2, D1),
  94.     struct UtilityBase *, UtilityBase, 23, Utility)
  95. #define SMult32(arg1, arg2) \
  96.     __AROS_LC2(LONG, SMult32, \
  97.     __AROS_LCA(long, arg1, D0), \
  98.     __AROS_LCA(long, arg2, D1), \
  99.     struct UtilityBase *, UtilityBase, 23, Utility)
  100.  
  101. __AROS_LP2(LONG, SMult64,
  102.     __AROS_LPA(long, arg1, D0),
  103.     __AROS_LPA(long, arg2, D1),
  104.     struct UtilityBase *, UtilityBase, 33, Utility)
  105. #define SMult64(arg1, arg2) \
  106.     __AROS_LC2(LONG, SMult64, \
  107.     __AROS_LCA(long, arg1, D0), \
  108.     __AROS_LCA(long, arg2, D1), \
  109.     struct UtilityBase *, UtilityBase, 33, Utility)
  110.  
  111. __AROS_LP2I(LONG, Stricmp,
  112.     __AROS_LPA(STRPTR, string1, A0),
  113.     __AROS_LPA(STRPTR, string2, A1),
  114.     struct UtilityBase *, UtilityBase, 27, Utility)
  115. #define Stricmp(string1, string2) \
  116.     __AROS_LC2I(LONG, Stricmp, \
  117.     __AROS_LCA(STRPTR, string1, A0), \
  118.     __AROS_LCA(STRPTR, string2, A1), \
  119.     struct UtilityBase *, UtilityBase, 27, Utility)
  120.  
  121. __AROS_LP3I(LONG, Strnicmp,
  122.     __AROS_LPA(STRPTR, string1, A0),
  123.     __AROS_LPA(STRPTR, string2, A1),
  124.     __AROS_LPA(LONG,   length,  D0),
  125.     struct UtilityBase *, UtilityBase, 28, Utility)
  126. #define Strnicmp(string1, string2, length) \
  127.     __AROS_LC3I(LONG, Strnicmp, \
  128.     __AROS_LCA(STRPTR, string1, A0), \
  129.     __AROS_LCA(STRPTR, string2, A1), \
  130.     __AROS_LCA(LONG,   length,  D0), \
  131.     struct UtilityBase *, UtilityBase, 28, Utility)
  132.  
  133. __AROS_LP1I(UBYTE, ToLower,
  134.     __AROS_LPA(ULONG, character, D0),
  135.     struct UtilityBase *, UtilityBase, 30, Utility)
  136. #define ToLower(character) \
  137.     __AROS_LC1I(UBYTE, ToLower, \
  138.     __AROS_LCA(ULONG, character, D0), \
  139.     struct UtilityBase *, UtilityBase, 30, Utility)
  140.  
  141. __AROS_LP1I(UBYTE, ToUpper,
  142.     __AROS_LPA(unsigned long, character, D0),
  143.     struct UtilityBase *, UtilityBase, 29, Utility)
  144. #define ToUpper(character) \
  145.     __AROS_LC1I(UBYTE, ToUpper, \
  146.     __AROS_LCA(unsigned long, character, D0), \
  147.     struct UtilityBase *, UtilityBase, 29, Utility)
  148.  
  149. __AROS_LP2(ULONG, UMult32,
  150.     __AROS_LPA(unsigned long, arg1, D0),
  151.     __AROS_LPA(unsigned long, arg2, D1),
  152.     struct UtilityBase *, UtilityBase, 24, Utility)
  153. #define UMult32(arg1, arg2) \
  154.     __AROS_LC2(ULONG, UMult32, \
  155.     __AROS_LCA(unsigned long, arg1, D0), \
  156.     __AROS_LCA(unsigned long, arg2, D1), \
  157.     struct UtilityBase *, UtilityBase, 24, Utility)
  158.  
  159. __AROS_LP2(ULONG, UMult64,
  160.     __AROS_LPA(unsigned long, arg1, D0),
  161.     __AROS_LPA(unsigned long, arg2, D1),
  162.     struct UtilityBase *, UtilityBase, 34, Utility)
  163. #define UMult64(arg1, arg2) \
  164.     __AROS_LC2(ULONG, UMult64, \
  165.     __AROS_LCA(unsigned long, arg1, D0), \
  166.     __AROS_LCA(unsigned long, arg2, D1), \
  167.     struct UtilityBase *, UtilityBase, 34, Utility)
  168.  
  169.  
  170. #endif /* CLIB_UTILITY_PROTOS_H */
  171.